﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Basicas;
using ProjetoJornada_Negocios.Fachada;
using System.Data;

namespace ProjetoJornada.Interno
{
    public partial class InstrutorMonitor_Editar : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string queryString = Request.QueryString["cpf"];

            if (!IsPostBack)
            {
                Instrutor_Monitor instrutorMonitor = Fachada.Instance.ConsultarInstrutorMonitorPorCPF(queryString);
                                
                if (instrutorMonitor != null)
                {
                    this.txtCpf.Text = instrutorMonitor.Cpf;
                    this.txtCurriculo.Text = instrutorMonitor.Curriculo;
                    this.txtEmail.Text = instrutorMonitor.Email;
                    this.txtNome.Text = instrutorMonitor.Nome;
                    this.txtRg.Text = instrutorMonitor.Rg;
                    this.txtTelefone.Text = instrutorMonitor.Telefone;
                    this.txtCelular.Text = instrutorMonitor.Celular;

                    this.txtBairro.Text = instrutorMonitor.Bairro;
                    this.txtCidade.Text = instrutorMonitor.Cidade;
                    this.txtComplemento.Text = instrutorMonitor.Complemento;
                    this.txtLogradouro.Text = instrutorMonitor.Rua;
                    this.txtNumero.Text = instrutorMonitor.Numero.ToString();
                    this.txtValorContrato.Text = instrutorMonitor.ValorContrato.ToString();

                    ListItem estado = this.UFDropDownList.Items.FindByValue(instrutorMonitor.Uf);
                    int indice = this.UFDropDownList.Items.IndexOf(estado);
                    this.UFDropDownList.SelectedIndex = indice;

                    if (instrutorMonitor.EhInstrutor)
                    {
                        this.rdbEhInstrutor.SelectedIndex = 0;
                    }
                    else
                    {
                        this.rdbEhInstrutor.SelectedIndex = 1;
                    }

                    ViewState["InstrutorMonitor"] = instrutorMonitor;
                }
            }
        }

        protected void ibtnEditar_Click(object sender, ImageClickEventArgs e)
        {
            Instrutor_Monitor instrutorMonitor = ViewState["InstrutorMonitor"] as Instrutor_Monitor;

            if (instrutorMonitor != null)
            {
                string cpf = this.txtCpf.Text;
                cpf = cpf.Replace("-", "");
                cpf = cpf.Replace(".", "");
                instrutorMonitor.Cpf = cpf;
                instrutorMonitor.Curriculo = this.txtCurriculo.Text;
                instrutorMonitor.Email = this.txtEmail.Text;
                instrutorMonitor.Nome = this.txtNome.Text;
                instrutorMonitor.Rg = this.txtRg.Text;
                instrutorMonitor.Telefone = this.txtTelefone.Text;
                instrutorMonitor.Celular = this.txtCelular.Text;

                 instrutorMonitor.Bairro = this.txtBairro.Text;
                 instrutorMonitor.Cidade = this.txtCidade.Text;
                 instrutorMonitor.Complemento = this.txtComplemento.Text;
                 instrutorMonitor.Rua = this.txtLogradouro.Text;
                 instrutorMonitor.Numero = Convert.ToInt32(this.txtNumero.Text);
                 instrutorMonitor.ValorContrato = Convert.ToDouble(this.txtValorContrato.Text);
                instrutorMonitor.Uf = this.UFDropDownList.SelectedValue;

                if (this.rdbEhInstrutor.SelectedIndex == 0)
                {
                    instrutorMonitor.EhInstrutor = true;
                }
                else
                {
                    instrutorMonitor.EhInstrutor = false;
                }

                Fachada.Instance.EditarInstrutorMonitor(instrutorMonitor);
                Response.Redirect("InstrutorMonitor_Listar.aspx");
            }
        }

        protected void ibtnCep_Click(object sender, ImageClickEventArgs e)
        {
            #region "Váriavies"
            string _uf;
            string _cidade;
            string _bairro;
            string _tipo_lagradouro;
            string _logradouro;
            string _resultado;
            #endregion

            //Cria um DataSet  baseado no retorno do XML  
            DataSet ds = new DataSet();
            ds.ReadXml("http://cep.republicavirtual.com.br/web_cep.php?cep=" + txtCep.Text.Replace("-", "").Trim() + "&formato=xml");

            if (ds != null)
            {
                if (ds.Tables[0].Rows.Count > 0)
                {
                    _resultado = ds.Tables[0].Rows[0]["resultado"].ToString();
                    switch (_resultado)
                    {
                        case "1":
                            _uf = ds.Tables[0].Rows[0]["uf"].ToString().Trim();
                            _cidade = ds.Tables[0].Rows[0]["cidade"].ToString().Trim();
                            _bairro = ds.Tables[0].Rows[0]["bairro"].ToString().Trim();
                            _tipo_lagradouro = ds.Tables[0].Rows[0]["tipo_logradouro"].ToString().Trim();
                            _logradouro = ds.Tables[0].Rows[0]["logradouro"].ToString().Trim();
                            break;
                        case "2":
                            _uf = ds.Tables[0].Rows[0]["uf"].ToString().Trim();
                            _cidade = ds.Tables[0].Rows[0]["cidade"].ToString().Trim();
                            _bairro = "";
                            _tipo_lagradouro = "";
                            _logradouro = "";
                            break;
                        default:
                            _uf = "";
                            _cidade = "";
                            _bairro = "";
                            _tipo_lagradouro = "";
                            _logradouro = "";
                            break;
                    }

                    this.UFDropDownList.SelectedValue = _uf;
                    this.txtCidade.Text = _cidade;
                    this.txtBairro.Text = _bairro;
                    this.txtLogradouro.Text = _tipo_lagradouro + " " + _logradouro;

                }
            }
        }
    }
}
